package com.wicket.okrcomponent.integration.dto;

import com.wicket.okrcomponent.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc QueryConfSchemeDetailComRespDto
 * @使用场景
 */
@Data
public class QueryConfSchemeDetailComRespDto
  extends BaseDto
  implements Serializable {

  /**
   * 配置方案ID
   */
  @ApiModelProperty("配置方案ID ")
  private String confSchemeId;

  /**
   * 配置方案标识
   */
  @ApiModelProperty("配置方案标识")
  private String confSchemeCode;

  /**
   * 配置方案名称
   */
  @ApiModelProperty("配置方案名称")
  private String confSchemeName;

  /**
   * 配置方案描述
   */
  @ApiModelProperty("配置方案描述")
  private String confSchemeDes;

  /**
   * 授权类型 CYCLE_TIME:周期时间型 FIXED_TIME:固定时间型 QUANTITY:数量型
   */
  @ApiModelProperty("授权类型")
  private String authType;

  /**
   * 授权单位 YEAR:年 A:个 COVER:套
   */
  @ApiModelProperty("授权单位")
  private String authUnit;

  /**
   * 授权数量
   */
  @ApiModelProperty("授权数量")
  private Long authorizationNum;

  /**
   * 归属业务场景标识
   */
  @ApiModelProperty("归属业务场景标识")
  private String bizSceneCode;

  /**
   * 开通钥匙类型标识 TENANT_SPACE:租户空间 ORG:组织 EVA_THEME:评价主题 EVA_TEMP:评价模板 PLATFORM:平台
   */
  @ApiModelProperty("开通钥匙类型标识")
  private String applObjType;

  /**
   * 方案类型编码 BASE_APP:基础应用 CORE_APP:核心应用 ENHANCE_APP:增强应用 PLUG_IN_APP:插件应用 PLATFORM_APP:平台应用
   */
  @ApiModelProperty("方案类型编码")
  private String confSchemeTypeCode;

  /**
   * 是否初始方案 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否初始方案")
  private String isInitialScheme;

  /**
   * 是否定制方案 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否定制方案")
  private String isCustom;

  /**
   * 是否开启自定义配置 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否开启自定义配置")
  private String isOpenCustomConf;

  /**
   * 生命周期状态 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
   */
  @ApiModelProperty("生命周期状态")
  private String subjectLifeCycle;

  /**
   * 操作人就职记录ID
   */
  @ApiModelProperty("操作人就职记录ID")
  private String operationInductionId;

  /**
   * 操作时间
   */
  @ApiModelProperty("操作时间")
  private Date operateTime;

}
